# readme 数据类型
# Number int（整数型）  float（浮点型） complex（复数） bool（布尔型）
# --------------------------------------------------------------------------------------------- #
# 字符串（String）就是一系列任意文本。用单引号或双引号包括起来，同时使用反斜杠（\）转义特殊字符。
print("I am \"ok\"")
# 字符串操作
# 截取字符串语法 变量[开始下标 : 结束下标] ， 不包含结束下标
msg = "Hello world"
print(msg)
print(msg[0:5])
print(msg[6:len(msg)])
# 加号(+)是字符串连接符， 星号(*)表示复制当前字符串
name = "张三"
age = 18
print("姓名：" + name + "，年龄：" + str(age))
print(msg * 2)
# --------------------------------------------------------------------------------------------- #
# 列表（List）写在[]内，元素之间以逗号分割
list1 = ['abc', '你好', 123]
print(list1)
# 列表可以被索引和切片, -1截取列表倒数第一个元素，-2截取列表倒数第2个元素
print(list1[0:2])
# 列表可以使用加号（+）操作进行拼接
list2 = list1[-1]
print(list2)
print(list1 + ['test4'])
# List中的元素是可以改变的
list1[2] = 321
print(list1)
# --------------------------------------------------------------------------------------------- #
# 元祖（tuple）写在小括号内，元素之间以逗号隔开
# tuple的元素不可变，但是可以包含可变的对象，如list
# 构造包含0个或者1个元素的元祖有特殊语法规则
tuple1 = ()  # 空元祖
tuple2 = (2,)  # 包含1个元素的元祖
print(tuple2)
# --------------------------------------------------------------------------------------------- #
# 字典（Dict）是一种映射类型，使用{}表示，他是一个无序的键（Key）值（Value）对集合
dict1 = {}
dict2 = {'name': 'test1', 'age': 10}
# 注意：key必须是不可变类型，在同一个字典中，key必须是唯一的，创建空字典使用{}
print(dict2)
print(dict2['name'])
print(dict2['age'])
